<?php
#
#
# Copyright TEDECO, 2009. http://tedeco.fi.upm.es
#
# This file is part of kumenya.
#
# Kumenya is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
#
# Kumenya is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with Foobar.  If not, see <http://www.gnu.org/licenses/>.
#
#
#
?>
<?php
	Interfaz::ControlarSesion(Contable);

	$errores = array();

	$fecha = Interfaz::Datos(FechaEmision);
	if (!$fecha) {
		Interfaz::Error ("Debe introducir una fecha");
		$exito = FALSE;
	}
	else {
		$criterios = Condicion::CriteriosConsulta ();
		if (!is_array($criterios)) {
			
		}
		
		foreach ($criterios as $clave => $valor)
			$criterios[$clave] = NULL;
		
		$tabla = Condicion::Consultar ($criterios);

		if (!empty($tabla)) {
			foreach ($tabla as $condicion) {
				$UidCondicion = $condicion[Uid];
				$criterios = array (Uid => $UidCondicion, FechaEmision => $fecha);
				$correcto = Nomina::Generar ($criterios);
				if (!$correcto) {
					$exito = FALSE;
					$error = Interfaz::Error();
					$correcto = Nomina::ConsultarPersona ($criterios);
					if ($correcto) {
						$persona = Interfaz::Resultado();
						$errores[] = $persona . " " . _($error) ;
					}
					else
						$errores[] = _($error);
				}
			}
			
			// GENERAR LOS APUNTES DE LAS NOMINAS GENERADAS
			//$exito = Nomina::GenerarApuntes(Interfaz::Datos());
			//if (!$exito) {
			//	$errores[] = Interfaz::Error();
			//}
			
			if (empty($errores))
				$exito = TRUE;
				
		}
		else {
			if (!Interfaz::HayError())
				Interfaz::Error("No se encontraron condiciones laborales");
			$exito = FALSE;
		}
	}
?>